package com.tony.easymvc.core.bean;

public enum ModuleConfig {

	BIZ_COMMON {
		@Override
		public String getModuleNames() {
			return "biz_common";
		}

	},
	CONTROLLER {
		@Override
		public String getModuleNames() {
			return "controller";
		}
	},
	// DAL {
	// @Override
	// public String getModuleNames() {
	// return "dal_core";
	// }
	//
	// },
	DATASOURCE {
		@Override
		public String getModuleNames() {
			return "datasource";
		}

	},
	PO {
		@Override
		public String getModuleNames() {
			return "po";
		}

	},
	POJO {
		@Override
		public String getModuleNames() {
			return "pojo";
		}

	},
	API {
		@Override
		public String getModuleNames() {
			return "api";
		}

	},
	SERVER {
		@Override
		public String getModuleNames() {
			return "server_web";
		};

		@Override
		public String getPackageing() {
			return "war";
		}
	},

	BIZ {
		@Override
		public String getModuleNames() {
			return "_biz_";
		}

		@Override
		public boolean isBase() {
			return false;
		}

	},
	DS {
		@Override
		public String getModuleNames() {
			return "_datasource_";
		}

		@Override
		public boolean isBase() {
			return false;
		}
	},
	DAL {
		@Override
		public String getModuleNames() {
			return "_dal_auto_";
		}

		@Override
		public boolean isBase() {
			return false;
		}
	};

	public abstract String getModuleNames();

	public String getPackageing() {
		return "jar";
	}

	public String getTmplName() {
		return "tmpl/module_tmpl/" + getModuleNames() + ".tmpl";
	}

	public boolean isBase() {
		return true;
	}

}
